package echat.future.cn.echat.message;

import java.util.List;

import echat.future.cn.echat.message.bean.AppointmentBean;
import echat.future.cn.echat.message.bean.AppointmentGourpBean;
import echat.future.cn.echat.message.bean.EbiBean;
import echat.future.cn.echat.message.bean.MyCallBean;
import echat.future.cn.echat.message.bean.RankListBean;
import echat.future.cn.echat.message.bean.WeekGroupRankBean;
import echat.future.cn.echat.message.rank.bean.RankGroupBean;
import echat.future.cn.echat.my.bean.BaseVo;
import io.reactivex.Observable;
import retrofit2.http.GET;
import retrofit2.http.POST;
import retrofit2.http.Query;

/**
 * Created by JX on 2018/8/29.
 */

public interface MessageApi {

    /**
     * E币
     * @param token
     * @return
     */
    @POST("/api/user/my_emoney")
    Observable<BaseVo<List<EbiBean>>> ebi_get(@Query("token") String token);

    /**
     * 我的通话
     * @param token
     * @param page
     * @return
     */
    @POST("/api/user/get_one_by_one_video")
    Observable<BaseVo<List<MyCallBean>>> mycall_get(@Query("token") String token, @Query("page") int page);

    /**
     * 我的预约
     * @param token
     * @return
     */
    @POST("/api/user/appointment_list")
    Observable<BaseVo<AppointmentGourpBean>> appointment_get(@Query("token") String token);

    /**
     * 删除预约
     * @param token
     * @param appoint_id
     * @return
     */
    @POST("/api/user/del_appointment")
    Observable<BaseVo> appointment_delete(@Query("token") String token, @Query("appoint_id") int appoint_id);

    /**
     * 土豪榜
     * @param token
     * @return
     */
    @POST("/api/user/tyrant_rank")
    Observable<BaseVo<RankGroupBean>> rank_tuhao(@Query("token") String token);

    /**
     * 仙女榜
     * @param token
     * @return
     */
    @POST("/api/user/fairy_rank")
    Observable<BaseVo<RankGroupBean>> rank_xiannv(@Query("token") String token);

    /**
     * 周周榜活动列表
     * @param page
     * @return
     */
    @GET("/home/getWeekList")
    Observable<BaseVo<List<RankListBean>>> week_rank_list(@Query("page") int page);

    /**
     * 周周榜土豪榜+仙女榜
     * @param type
     * @param week_id
     * @return
     */
    @GET("/home/getWeekInfo")
    Observable<BaseVo<WeekGroupRankBean>> week_rank_info(@Query("type") int type, @Query("week_id")int week_id);

}
